草庐IT

c++ - OpenSSL AES_cfb128_encrypt C++

全部标签

java - 遍历所有字节值 -128-127 而无需在 Java 中强制转换

我需要遍历所有字节值(-128到127,包括在内)。我可以使用int迭代器,但我每次都必须转换为byte.使用byte迭代器有我无法测试b的问题因为它会溢出。我想到了使用while循环并在递增之前进行测试,这是迄今为止我最好的解决方案。有没有更好的方法? 最佳答案 Java字节是有符号的,所以它们的值是-128到127。无论如何,你不应该担心类型转换和额外的检查,因为它们很容易优化掉。事实上,在JVM级别,没有字节变量这样的东西。无论如何,它都被视为一个int。 关于java-遍历所有字

java - 签名长度不正确 : got 127 but was expecting 128

java1.8升级后我遇到了一个奇怪的问题。我在我们的一个实用程序中使用jsch-0.1.54.jar从各个地方下载文件。这个特殊的实用程序已经使用了将近4-5年,没有任何问题(当时是jsch-0.1.48)。当时环境是java1.6。最近我们升级到java1.8,因此我们升级了这个特定的实用程序。现在我们遇到一个奇怪的问题,它偶尔会出现,而且大多数时候文件下载都是完美的。错误日志INFO:SSH_MSG_KEXDH_INITsentINFO:expectingSSH_MSG_KEXDH_REPLYINFO:DisconnectingfromSRV2000port222016-10-2

java - PBEWITHSHA256AND128BITAES-CBC-BC 在 RedHat 6.4 上创建 java.security.NoSuchAlgorithmException

我们有一个应用程序使用BouncyCaSTLe通过PBEWITHSHA256AND128BITAES-CBC-BC算法加密数据。它在运行OpenJDK1.7的Ubuntu上运行良好。但是,当我们将其移动到同时运行OpenJDK1.7的RedHat6.4时,我们会遇到以下异常:java.security.NoSuchAlgorithmException关于可能导致此问题的任何想法。我们如何将PBEWITHSHA256AND128BITAES-CBC-BC算法添加到RedHat6.4?p.s.应用程序在JBoss中运行。privateStringcryptoAlgorithm="PBEWI

java - 使用 keytool 生成 128 位 key

有没有一种方法可以生成适合使用Sun的keytool程序进行加密的128位key对?似乎http://java.sun.com/javase/6/docs/technotes/guides/security/StandardNames.html#KeyPairGenerator中可用的算法不支持或不允许短于512位的key。key对将与ff一起使用。代码片段:Security.addProvider(newBouncyCastleProvider());KeyStorekeyStore=KeyStore.getInstance("PKCS12");FileInputStreamkeyS

Java 二进制文字 - 字节值为 -128

从SE7开始,Java允许将值指定为二进制文字。文档告诉我“字节”是一种可以容纳8位信息的类型,值-128到127。现在我不知道为什么但我不能定义8位而只能定义7位如果我尝试将二进制文字分配给Java中的字节如下:byteb=0b000_0000;//solvestothevalue0byteb1=0b000_0001;//solvestothevalue1byteb3=0b000_0010;//solvestothevalue2byteb4=0b000_0011;//solvestothevalue3依此类推,直到我们找到使用这7位的最后几种可能性:byteb5=0b011_1111

1 个 block (16 字节)的 Java AES-128 加密返回 2 个 block (32 字节)作为输出

我使用以下代码进行AES-128加密来编码一个16字节的block,但编码值的长度给出了2个32字节的block。我错过了什么吗?plainEnc=AES.encrypt("thisisapassword!");importjava.security.*;importjava.security.spec.InvalidKeySpecException;importjavax.crypto.*;importsun.misc.*;publicclassAES{privatestaticfinalStringALGO="AES";privatestaticfinalbyte[]keyValu

java - -128 在 Java 中作为二进制文字

基于java中的byte类型是带符号的8位two'scomplement整数,为什么第二种声明字节的方法不起作用?byteok=-128;bytenotok=0b10000000;我的理解是1000000应该是-128但java指示上面的notok变量应该是int而不是byte 最佳答案 0b10000000是一个int文字(=0b00000000000000000000000010000000),等于+128。byte占8位,不能表示+128。但是,您可以按如下方式实现:bytenotok=(byte)0b10000000;

java - 无效的 AES key 长度 : 128 bytes?

我收到java.security.InvalidKeyException:InvalidAESkeylength:128bytesCIPHER.init(Cipher.ENCRYPT_MODE,keySpec);密码为CipherCIPHER=Cipher.getInstance("AES");和keySpecSecretKeySpeckeySpec=newSecretKeySpec(key,"AES");那个key是一个长度为128的byte[]我通过Diffie-Hellmankey交换获得(虽然我从哪里得到它应该不重要,对吧?),key完全由非零字节填充为什么Cipher.ini

java - 使用对称 key (AES -128) 签署和验证消息

我想知道对称key可以用来签署消息吗?我们可以使用共享key进行加密。还有当使用对称key签名时,JAVA中可以使用什么API来加载key并对消息进行签名?如果我使用java.security中的Signature,它有一个apiinitSign,但它将公钥/私钥对中的私钥作为参数来签署消息。这里的key是对称key。有什么建议吗? 最佳答案 共享key可用于计算MessageAuthenticationCode(MAC),然后可用于向知道相同共享secret的另一方确认消息的完整性和真实性。与使用私钥创建并使用公钥验证的数字签名不

陈丹琦团队新作:Llama-2上下文扩展至128k,10倍吞吐量仅需1/6内存

陈丹琦团队刚刚发布了一种新的LLM上下文窗口扩展方法:它仅用8k大小的token文档进行训练,就能将Llama-2窗口扩展至128k。最重要的是,在这个过程中,只需要原来1/6的内存,模型就获得了10倍吞吐量。除此之外,它还能大大降低训练成本:用该方法对7B大小的羊驼2进行改造,只需要一块A100就能搞定。团队表示:希望这个方法有用、好用,为未来的LLM们提供廉价又有效的长上下文能力。目前,模型和代码都已在HuggingFace和GitHub上发布。只需添加两个组件这个方法名叫CEPE,全称“并行编码上下文扩展(ContextExpansionwithParallelEncoding)”。作为